#pragma once

#include "WorldObject.h"
#include "IAnimated.h"

/**
*  Enumeration with defined tree types
*  Used in Tree object to get specific Model3D
*/
enum ETreeType
  {
  TT_DEFAULT_TREE
  };

class World;

class Tree : public WorldObject, public IAnimated
  {
  public:
    HSMODEL_API Tree(World &i_world, ETreeType i_type);
    HSMODEL_API virtual void NextFrame() override;
		HSMODEL_API virtual std::string GetName() const override;

    HSMODEL_API ~Tree();
  private:
    World &m_world;
    size_t m_state;
  };